____ _ _ _ _
| _ \ ___ | |_ (_) _ __ ___ __| | (_) __ _
| |_) | / _ \ | __| | | | '_ \ / _ \ / _| | | | / _ |
| _ < | __/ | |_ | | | |_) | | __/ | (_| | | | | (_| |
|_| \_\ \___| \__| |_| | .__/ \___| \__,_| |_| \__,_|
|_|
- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Base di dati
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
In mwcginformatica una mwcwbase di dati,cite-ref-1[1] detta anche mweabanca daticite-ref-2[2] oppure mwfqmwfgdatabase o mwfwmwgadata base,cite-ref-0-3-0[3] è una collezione di dati organizzati immagazzinata e accessibile per via elettronica.cite-ref-0-3-1[3]
Nel linguaggio comune e informale, la mwiglocuzione mwiwdatabase tende a essere utilizzata impropriamente con varie sfumature di significato, di ordine più generale rispetto a "collezione astratta di dati":
• mwjgmwjwdatabase server: ovvero il mwkasistema fisico, comprendente sia le risorse di mwkqelaborazione che di mwkgmemorizzazione necessarie al funzionamento della base di dati;
• mwlamwlqdatabase management system: ovvero il mwlgsistema software necessario all'interfacciamento con la base di dati.cite-ref-0-3-2[3]
La progettazione delle basi di dati è un'attività complessa, che si basa sull'applicazione di tecniche formali in congiunzione a considerazioni pratiche derivate dalla natura dei dati stessi. In fase di progettazione si affrontano quindi problemi in materia di mwnqmodellazione, mwngrappresentazione, mwnwarchiviazione e mwoaaccesso ai dati, oltre che della loro mwoqsicurezza, mwogprivatezza e mwowintegrità. Senza contare altre questioni di contorno che pertengono più propriamente ai mwpaDBMS.cite-ref-4[4]
Contents
• Storia
• Gestione
• Italia
• Note
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Storia
I modelli navigazionali
Negli anni sessanta, con la crescita della capacità elaborativa dei calcolatori e la creazione di una serie di banche dati utilizzabili per diverse applicazioni, crebbe l'interesse nel fissare uno standard. mwrwCharles W. Bachman, creatore del database navigazionale mwsaIDS, fondò il mwsqDatabase Task Group all'interno del gruppo mwsgCODASYL: il team di lavoro dedicato alla creazione e standardizzazione del mwtalinguaggio di programmazione mwtqCOBOL. Il lavoro del gruppo venne pubblicato nel 1971 e lo standard risultante prese il nome di "Approccio CODASYL", varie implementazioni commerciali apparvero sul mercato dopo poco tempo.
L'approccio CODASYL era basato sulla navigazione manuale in un insieme di dati disposti sotto forma di rete. Alla prima apertura del programma questo si trovava sul primo dato disponibile contenente, tra le altre cose, un mwtwpuntatore ai dati successivi. Per trovare un dato il programma attraversava la serie di puntatori fino a trovare il dato corretto. Delle semplici mwuamwuqquery come "Trova tutte le persone nate in mwugSvezia" richiedevano l'attraversamento dell'intero set di dati. Non esisteva alcuna funzione di ricerca; oggi questo potrebbe sembrare una limitazione, ma all'epoca, essendo i dati archiviati su mwuwnastro magnetico, operazioni come quelle evidenziate sopra peggioravano ulteriormente il tempo di ricerca.
Nel 1968 mwvqIBM sviluppò un proprio mwvgDBMS chiamato mwvwIMS. IMS era lo sviluppo di un programma utilizzato nelle mwwamissioni Apollo sui calcolatori IBM mwwqSystem/360 e utilizzava un sistema simile all'approccio CODASYL, con l'unica differenza di utilizzare un modello gerarchico anziché a rete.
Ambedue le soluzioni presero poi il nome di "banche dati navigazionali" a causa del metodo di consultazione che era stato previsto. Inoltre mwwwCharles Bachman, in occasione della premiazione nel 1973 in cui gli venne conferito il mwxaPremio Turing, presentò un lavoro intitolato mwxqIl programmatore come navigatore. IMS è abitualmente classificato come una banca dati mwxggerarchica, mentre IDS e IDMS (ambedue banche dati mwxwCODASYL), CINCOMs e TOTAL sono classificati come banche dati mwyqreticolari.
Il modello relazionale
mwzqEdgar F. Codd lavorava nella sede mwzgcaliforniana di mwzwIBM come ricercatore sull'allora nascente tecnologia dei mwaadischi rigidi quando osservò l'inefficienza dell'approccio CODASYL con la nuova modalità di memorizzazione dei dati, inefficienza principalmente dovuta all'assenza di una funzione di ricerca. Nel 1970 cominciò a produrre diversi documenti schematizzanti un nuovo approccio alla costruzione delle basi di dati, culminati nell'articolo "mwagA Relational Model of Data for Large Shared Data Banks" (mwawlett. "Un modello relazionale dei dati per banche dati condivise di grandi dimensioni" in italiano). In questo articolo descrisse un nuovo sistema per archiviare e modificare grandi quantità di dati, basato su mwbacollezioni di mwbqtuple di dimensione fissata (mwbgrelazioni) invece che mwbwalberi di mwcamwcqrecord.cite-ref-codd-1970-5-0[5]
IBM cominciò a implementare questo modello in alcuni prototipi all'inizio degli anni settanta, a cominciare dal mwdwmweaSystem R. Agli inizi degli anni '80 il sistema aveva ormai dimostrato la sua superiorità rispetto a mweqCODASYL e quindi IBM passò a sviluppare una versione commerciale di mwewSystem R, che prese il nome di "SQL/DS" prima e "mwfaDB2" infine.cite-ref-6[6] Parallelamente il lavoro di Codd era stato ripreso dal mondo accademico attraverso il progetto mwgqINGRES, dal quale nacquero numerosi spin-off commerciali che andarono a concorrere con IBM.cite-ref-7[7] Nello stesso periodo venne anche standardizzato il linguaggio mwhgSQL.
Il movimento NoSQL
Il termine NoSQL fu usato per la prima volta nel 1998 per descrivere una base di dati relazionale mwigopen source che non usava un'interfaccia mwiwSQL. L'autore Carlo Strozzi dichiarò che "come movimento, NoSQL diparte in modo radicale dal modello relazionale, e quindi andrebbe chiamato in modo più appropriato NoREL, o qualcosa di simile".cite-ref-8[8]
All'opposto di quanto si potrebbe pensare il movimento NoSQL non è contrario all'utilizzo di database relazionali. Il termine NoSQL infatti è acronimo di mwkgNot Only SQL, a significare che esistono diversi casi d'uso per i quali il modello relazionale rappresenta una forzatura, ma tanti altri per i quali tale modello è ancora la soluzione migliore.
Il termine fu riutilizzato nel 2009 da un dipendente di Rackspace, Eric Evans, quando Johan Oskarsson di mwlgLast.fm volle organizzare un evento per discutere di basi di dati distribuite open sourcecite-ref-9[9]. Il nome era un tentativo di etichettare il crescente numero di database non relazionali e distribuiti che spesso non garantivano le classiche proprietà mwmwACID, a causa di vari compromessi formulati sulla base del mwnateorema CAP.
Caratteristiche
Gestione delle informazioni
La banca dati deve contenere anche le informazioni sulle loro rappresentazioni e sulle relazioni che li legano. Spesso, ma non necessariamente, una base dati contiene le seguenti informazioni:
• mwogStrutture dati che velocizzano le operazioni frequenti, di solito a spese di operazioni meno frequenti.
• Collegamenti con dati esterni, cioè riferimenti a file locali o remoti non facenti parte della banca dati.
• Informazioni di sicurezza che autorizzano solo alcuni profili utente a eseguire alcune operazioni su alcuni mwpqtipi di dati.
• Programmi che vengono eseguiti, automaticamente o su richiesta di utenti autorizzati, per eseguire elaborazioni sui dati. Un tipico automatismo consiste nell'eseguire un mwpwprogramma ogni volta che viene modificato un dato di un certo tipo.
In un sistema informatico una banca dati può essere usata direttamente dai programmi applicativi, interfacciandosi con il mwqqsupporto di memorizzazione agendo direttamente sui file. Questa strategia era adottata universalmente fino agli mwqganni sessanta, ed è tuttora impiegata quando i dati hanno una struttura molto semplice o quando sono elaborati da un solo programma applicativo.
Tuttavia dalla fine degli anni sessanta, per gestire banche dati complesse condivise da più applicazioni, si sono utilizzati appositi sistemi software detti "sistemi per la gestione di basi di dati" (in inglese "mwradatabase management system" o "DBMS"). Uno dei vantaggi di questi sistemi è la possibilità di non agire direttamente sui dati, ma di vederne una rappresentazione concettuale.
La ricerca nel campo delle banche dati studia le seguenti problematiche:
• Progettazione di banche dati.
• Progettazione e implementazione di DBMS.
• Interpretazione (analisi) di dati contenuti nelle banche dati.
Le banche dati spesso fanno uso di tecnologie derivate da altre branche dell'informatica. È usuale utilizzare tecniche derivate dall'mwswintelligenza artificiale, come ad esempio il mwtadata mining, per cercare di estrarre relazioni o più in generale informazioni presenti nelle banche dati, ma non immediatamente visibili.
Struttura e modello logico
Le mwuwinformazioni contenute in una banca dati sono strutturate e collegate tra loro secondo un particolare modello logico scelto dal progettista, per esempio mwvarelazionale, mwvqgerarchico, mwvgreticolare o mwvwa oggetti. Gli utenti si interfacciano con le banche dati attraverso i cosiddetti mwwalinguaggi di interrogazione (mwwqquery di ricerca o interrogazione, inserimento, cancellazione, aggiornamento ecc.) e grazie a particolari applicazioni mwwgsoftware dedicati (DBMS).
Di solito le banche dati possono avere varie strutture, in ordine cronologico di comparsa e diffusione:
1. mwxggerarchico (anni sessanta) rappresentabile tramite un mwxwalbero, ovvero con strutture simili ai mwyafile system gerarchici,
2. mwygreticolare (anni sessanta) rappresentabile tramite un mwywgrafo,
3. mwzqrelazionale (mwzganni settanta) attualmente il più diffuso, rappresentabile mediante tabelle e relazioni tra esse,
4. mw0aa oggetti (mw0qanni ottanta) estensione alle basi di dati del paradigma "Object Oriented", tipico della programmazione a oggetti,
5. mw0wDocument-oriented (NoSQL),
6. Key-Value Store (NoSQL),
7. mw1wGraph-based (NoSQL),
8. Colonnari (NoSQL),
9. semantica (inizio mw2wanni duemila) rappresentabile con un grafo relazionale.
Il formato mw4qXML, oltre che per scambi di dati in rete, si sta diffondendo per la definizione di vere e proprie basi di dati. XML ha una struttura gerarchica, pare quindi un "ritorno alle origini" dei modelli di dati.
Un requisito importante di una buona banca dati consiste nel non duplicare inutilmente le informazioni in essa contenute: questo è reso possibile dai gestori di mw4wbanche dati relazionali, teorizzati da mw5aEdgar F. Codd, che consentono di salvare i dati in tabelle che possono essere collegate.
La funzionalità di una banca dati dipende in modo essenziale dalla sua mw5gprogettazione: la corretta individuazione degli scopi della banca dati stessa e quindi delle tabelle, da definire attraverso i loro campi e le relazioni che le legano, permette poi una estrazione dei dati più veloce e in generale una gestione più efficiente.
Proprietà ACID
Una qualunque modifica allo stato del database tramite operazioni varie è detta mw6gtransazione, la quale deve rispettare le cosiddette regole o proprietà mw6wACID. Le operazioni più tipiche in un DB sono quelle riassunte dall'acronimo mw7aCRUD.
Efficienza e sicurezza
Sicurezza significa impedire che la base dati venga danneggiata da interventi accidentali o non autorizzati, per esempio un mw8aattacco ai database, e mantenerne l'integrità ovvero garantire che le operazioni effettuate sulla base di dati da utenti autorizzati non provochino una perdita consistente di dati, garantendone al contempo l'mw8qaffidabilità. La protezione da accessi non autorizzati è un tema importante nella gestione delle basi di dati che si rivelano vulnerabili nei seguenti punti:
• mw9aSicurezza dei server
• Connessioni tra database
• Controllo sugli accessi al database
• mw-aData warehouse
• mw-gData mining
Classificazione
Secondo il modello dei dati
Base di dati navigazionale
Le basi di dati navigazionali sono orientate alla navigazione manuale in un insieme di dati disposti sotto forma di rete o mwaqaalbero. Alla prima apertura del programma questo si trovava sul primo dato disponibile contenente, tra le altre cose, un mwaqepuntatore ai dati successivi. Per trovare un dato il programma attraversava la serie di puntatori fino a trovare il dato corretto.
Questi modelli non brillano particolarmente in prestazioni. Delle semplici mwaqmmwaqqquery come "Trova tutte le persone nate in Svezia" richiedono l'attraversamento dell'intero set di dati. Non è prevista alcuna funzione di ricerca; oggi questo potrebbe sembrare una limitazione, ma all'epoca, essendo i dati archiviati su mwaqunastro magnetico, operazioni come quelle evidenziate sopra peggioravano ulteriormente il tempo di ricerca.
Alcuni esempi di DBMS basati su modelli navigazionali sono: IDS, IDMS, CINCOM, TOTAL e mwaqgIMS.
Base di dati relazionale
Uno degli aspetti interessanti introdotti nelle banche dati relazionali sta nel collegamento delle tabelle: nel modello relazionale, per ogni mwarerecord viene definita una mwarichiave, ovvero un identificatore univoco della tupla. Nella ricostruzione delle relazioni, l'elemento di riferimento, che distingue una riga da un'altra è proprio questa chiave e viene richiamata nella definizione della relazione. La chiave può essere uno dei dati stessi che vengono memorizzati (ad esempio, per la tabella utenti, il "Codice Fiscale" della persona), una loro combinazione (chiave composta), o ancora un campo che viene aggiunto specificatamente per questo scopo. In ogni caso, la chiave primaria deve essere presente in ogni tupla e mai ripetuta più di una volta in ogni relazione.
Base di dati multidimensionali
Le banche dati multidimensionali sono un paradigma definito ancora una volta da Codd per sopperire alle scarse performance offerte dalle banche dati relazionali nel caso di utilizzo delle banche dati stesse per processi di analisi (on line analitical process, OLAP). Tali sistemi consentono di effettuare analisi su enormi quantità di dati con efficienza, cosa non possibile su banche dati relazionali più adatte a gestire transazioni (on line transaction process, OLTP).
Da fine anni '90 pressoché ogni banca dati relazionale commerciale ha al suo interno un motore multidimensionale per effettuare analisi.
Base di dati NoSQL
mwarsNoSQL è un movimento che promuove sistemi mwarwsoftware dove la mwar0persistenza dei dati è in generale caratterizzata dal fatto di non utilizzare il mwar4modello relazionale, di solito usato dalle basi di dati tradizionali (mwar8RDBMS). L'espressione "NoSQL" fa riferimento al linguaggio mwasaSQL, che è il più comune linguaggio di interrogazione dei dati nelle banche dati relazionali, qui preso a simbolo dell'intero paradigma relazionale.
Base di dati orientata al documento
Una Base di dati orientata al documento è un programma per applicazioni orientate al documento. Questi sistemi potrebbero essere implementati come strato sopra un database relazionale o a oggetti.
Le basi di dati orientate al documento non memorizzano i dati in tabelle con campi uniformi per ogni record come nei database relazionali, ma ogni record è memorizzato come un documento che possiede determinate caratteristiche. Qualsiasi numero di campi con qualsiasi lunghezza può essere aggiunto al documento. I campi possono anche contenere pezzi multipli di dati.
Base di dati a grafo
Una base di dati a grafo usa nodi e archi per rappresentare e archiviare l'informazione. La rappresentazione dei dati mediante mwas0grafi offre un'alternativa al mwas4modello relazionale che fa uso di tabelle, alle mwas8basi di dati orientate al documento (che usano documenti), o altri, come i sistemi ad archivi strutturati (structured storage) basati su colonne o su cesti non interpretati di dati.
I database a grafo sono spesso più veloci di quelli relazionali nell'associazione di set di dati, e mappano in maniera più diretta le strutture di applicazioni orientate agli oggetti. Scalano più facilmente a grandi quantità di dati e non richiedono le tipiche e onerose operazioni di unione (mwatijoin). Dipendono meno da un rigido schema entità-relazione e sono molto più adeguati per gestire dati mutevoli con schemi evolutivi. Al contrario, i database relazionali sono tipicamente più veloci nell'eseguire le stesse operazioni su un grande numero di dati.
Base di dati a oggetti
Evoluzione del precedente mwatcmodello multidimensionale, questa tipologia di sistemi consente di memorizzare direttamente "oggetti" affini a quelli utilizzati nella mwatgprogrammazione a oggetti. Questo permette di aggirare il problema dellmwatk'mwatoObject-relational impedance mismatch.
Questo può avvenire grazie al particolare concetto di proprietà delle banche dati multidimensionali. Nella programmazione a oggetti, ognuno di questi "oggetti" tipicamente ne conterrà altri. Ad esempio, l'oggetto contenente il Signor Rossi, conterrà un riferimento all'oggetto "Indirizzo". Contenendo il supporto per molti linguaggi di programmazione a oggetti, le banche dati che sfruttano la medesima tecnologia stanno avendo un periodo di forte sviluppo di questi tempi.
Base di dati spaziale
Una base di dati spaziale è una base di dati ottimizzata per archiviare e interrogare dati correlati a oggetti nello spazio, tra cui punti, linee e poligoni. Nelle basi di dati spaziali sono integrate quindi delle funzionalità aggiuntive per processare tipi di dati spaziali. L'mwauaOpen Geospatial Consortium ha creato le specifiche mwaueSimple Features che stabiliscono degli standard per l'aggiunta di funzionalità spaziali alle banche dati.
Base di dati multimediale
Una base di dati multimediale è una base di dati che raccoglie oggetti di tipo testo, immagine, oggetti 3D, audio, video e una combinazione di questi e fornisce strumenti per la loro memorizzazione, accesso, ricerca e controllo. Attualmente il DBMS Oracle fornisce funzioni tipiche delle basi di dati multimediali.
Secondo la tipologia di servizio
Base di dati in cloud
Quella dei mwaukdatabase in mwauocloud è una tipologia di basi di dati che viene ospitata su una piattaforma di mwausmwauwcloud computing. Nelle versioni più evolute la maggior parte del sistema database è gestito dalla piattaforma cloud, lasciando al proprietario solo compiti amministrativi di alto livello. Si parla in questo caso di mwau0Database-as-a-Service (DBaaS).
Secondo la modalità di accesso ai dati
Base di dati parallela
Un database parallelo è un tipo di database in cui le prestazioni vengono ottimizzate tramite la parallelizzazione di varie funzionalità, ad esempio il caricamento dei dati, la costruzione degli indici e la gestione delle interrogazioni. Nell'esecuzione parallela, molte operazioni sono eseguite contemporaneamente, al contrario dell'esecuzione seriale, dove le diverse fasi di elaborazione sono sequenziali.
Base di dati distribuita
In informatica un database distribuito è un database che si trova sotto il controllo di un database management system (DBMS) nel quale gli archivi di dati non sono memorizzati sullo stesso computer bensì su più elaboratori o nodi. In altri termini il database in senso fisico può essere dislocato in più computer situati nello stesso luogo, oppure distribuito in una rete di computer connessi tra loro sotto forma appunto di sistema distribuito.
Progettazione
La progettazione di basi di dati è il processo di formulazione di un modello dettagliato del database. Questo modello contiene tutte le scelte progettuali a livello logico e fisico e i parametri fisici di memorizzazione necessari per la generazione del mwav0data definition language (DDL) che può essere usato per l'implementazione del database. Un modello dei dati completamente specificato contiene i dettagli specifici per ogni singola entità.
Gestione
Linguaggi di interrogazione
Nell'ambito dell'utilizzo/amministrazione della base di dati, una qualunque operazione sulla base di dati da parte dell'utente/amministratore su DBMS è ottenibile tramite un opportuno linguaggio attraverso un DBMS manager a mwawqinterfaccia grafica o a mwawuinterfaccia a riga di comando. In generale è possibile distinguere più linguaggi per basi di dati, ciascuno con lessico e mwawysintassi che definiscono tutte le mwawcistruzioni possibili, a seconda del loro utilizzo o finalità a partire dalla creazione/progettazione, gestione, ristrutturazione, sicurezza, fino all'interrogazione della base di dati stessa:
• mwawoData Definition Language (DDL) - consente di definire la struttura o organizzazione logica della base di dati (mwawsschema di database) e le autorizzazioni per l'accesso.
• mwaw0Data Manipulation Language (DML) - permette di inserire, modificare, cancellare i dati (mwaw4transazione).
• mwaxaData Control Language (DCL) - permette di gestire utenti e permessi.
• mwaxiDevice Media Control Language (DMCL) - permette di controllare i supporti (mwaxmmemoria di massa) dove vengono memorizzati i dati.
• mwaxuQuery language (QL) - permette di interrogare il database, cioè estrarre e leggere i dati.
La sintassi di questi linguaggi varia a seconda del particolare DBMS e i vari linguaggi mantengono tra loro un'uniformità concettuale.
Inoltre è possibile suddividere i linguaggi come:
• Linguaggi testuali interattivi immersi in mwax0linguaggi di programmazione comuni, quali mwax4C, mwax8BASIC ecc.
• Linguaggi testuali interattivi immersi in linguaggi di programmazione proprietari.
• Linguaggi grafici e mwayimwaymuser-friendly, come mwayqQBE (Query By Example), che possono essere utilizzati anche dai meno esperti.
Aspetti giuridici e legali
Italia
In Italia l'art 64 quinquies della mwayolegge 22 aprile 1941, n. 633 sul diritto d'autore prevede che:cite-ref-10[10]
«L'autore di una banca di dati ha il diritto esclusivo di eseguire o autorizzare:»
«a) la riproduzione permanente o temporanea, totale o parziale, con qualsiasi mezzo e in qualsiasi forma;»
«b) la traduzione, l'adattamento, una diversa disposizione e ogni altra modifica;»
«c) qualsiasi forma di distribuzione al pubblico dell'originale o di copie della banca di dati; la prima vendita di una copia nel territorio dell'Unione europea da parte del titolare del diritto o con il suo consenso esaurisce il diritto di controllare, all'interno dell'Unione stessa, le vendite successive della copia;»
«d) qualsiasi presentazione, dimostrazione o comunicazione in pubblico, ivi compresa la trasmissione effettuata con qualsiasi mezzo e in qualsiasi forma;»
«e) qualsiasi riproduzione, distribuzione, comunicazione, presentazione o dimostrazione in pubblico dei risultati delle operazioni di cui alla lettera b).»
L'autore di una banca di dati, che ha scelto e organizzato creativamente il materiale all'interno della raccolta, è quindi titolare delle facoltà esclusive di natura patrimoniale e morale riconosciute a tutti gli autori di opere dell'ingegno secondo l'articolo 64-quinquies e seg. della mwazylegge 633/1941. I diritti esclusivi di riproduzione, traduzione, adattamento, distribuzione, presentazione e dimostrazione sono detti diritti patrimoniali, cioè hanno un valore economicamente valutabile. In quanto patrimoniali i sopracitati diritti sono trasferibili.
L'autore può quindi effettuare o autorizzare: la riproduzione permanente o temporanea, totale o parziale, la traduzione, le modifiche, gli adattamenti e le diverse disposizioni del materiale, la distribuzione, la presentazione in pubblico e l'utilizzazione economica.
C'è invece la possibilità di una libera utilizzazione quando l'accesso e la consultazione sono svolte per finalità didattiche o di ricerca scientifica, quando l'uso dei dati persegue fini di sicurezza pubblica e quando i dati sono utilizzati per una procedura amministrativa o giurisdizionale. La durata del diritto d'autore è di 70 anni dalla morte dell'autore.
In qualunque caso le banche dati sono tutelate dal diritto d’autore indipendentemente dalla tutela eventualmente accordata alle opere o ai dati da cui esse sono composte, con la precisazione che la tutela della banca dati non si estende alle opere o dati in questione. In sostanza la tutela riguarda la struttura della banca dati, in pratica la sua forma espressiva.
Nel caso in cui la banca di dati sia originale, cioè con dati organizzati secondo criteri originali e non per esempio in ordine alfabetico o cronologico, l'autore gode dei diritti morali e di sfruttamento economico della banca dati stessa. Invece nel caso in cui la banca dati non sia originale la tutela dei diritti non è per l'autore, ma per il costruttore ovvero colui che effettua investimenti per la costituzione della banca dati. Al costitutore della banca di dati sarà riconosciuta, sul solo territorio dell'mwazsUnione europea, la titolarità di un diritto mwazwsui generis diverso dal diritto d'autore e dai diritti connessi, volto a tutelare il lavoro svolto e gli investimenti effettuati. Infatti il costitutore può vietare le operazioni di estrazione e reimpiego della totalità o di una parte della banca dati. La durata del diritto del costitutore è di 15 anni, rinnovabile in caso di modifiche o integrazioni sostanziali apportate alla raccolta. Il conteggio dei 15 anni comincia dal 1º gennaio dell'anno successivo alla data del completamento della banca dati. Nel caso in cui il database sia accessibile via internet i 15 anni cominciano dal 1º gennaio successivo alla messa a disposizione della banca di dati stessa.
Unione europea
Il diritto alla protezione è stato riconosciuto in nell'mwaz8Unione europea grazie all’introduzione della Direttiva 96/9/CE presentata dall’mwaaaUnione europea, in cui si parla del suddetto diritto nel capitolo III e più precisamente negli articoli che vanno dal 7 fino all'11.cite-ref-11[11]
Tramite questo diritto, gli Stati membri conferiscono al costitutore di una banca di dati la possibilità di vietare operazioni di estrazione e/o reimpiego della totalità o di una parte sostanziale del contenuto della stessa, valutata in termini qualitativi o quantitativi, qualora il conseguimento, la verifica e la presentazione di tale contenuto attestino un investimento rilevante.
Gli Stati membri possono inoltre stabilire che l'utente legittimo di una banca di dati messa in qualsiasi modo a disposizione del pubblico possa, senza autorizzazione del costitutore della stessa, estrarre e/o reimpiegare una parte sostanziale del contenuto di tale banca:
a) qualora si tratti di un'estrazione per fini privati del contenuto di una banca di dati non elettronica;
b) qualora si tratti di un'estrazione per finalità didattiche o di ricerca scientifica, purché l'utente legittimo ne citi la fonte e in quanto ciò sia giustificato dagli scopi non commerciali perseguiti;
c) qualora si tratti di estrazione e/o reimpiego per fini di sicurezza pubblica o per una procedura amministrativa o giurisdizionale.
La tutela sui generis è quindi una protezione dell’insieme delle informazioni contenute all’interno di una banca dati, considerando lo sforzo impiegato per la sua realizzazione.
Per tali ragioni la tutela sui generis trova il suo fondamento giuridico nel mwaawprincipio di territorialità, in quanto solo le banche dati create da un cittadino di uno Stato membro dell’Unione europea ne beneficiano.
Il requisito fondamentale richiesto per la concessione della tutela sui generis è un ingente investimento di risorse umane ed economiche, in modo tale da poter differenziare la raccolta con una semplice copia di informazioni, che non richiede un impiego tanto grande. L'investimento che viene preso in considerazione riguarda le attività di raccolta di dati, la verifica delle informazioni e la presentazione dell’insieme dei materiali.
Analizzando il mwaa8diritto d'autore e il diritto sui generis, in questa prospettiva, è facile capire le differenze. Il primo si limita a proteggere la forma, quindi l’architettura e la sequenza in cui sono disposti i dati, frutto di una elaborazione creativa; il secondo si applica al materiale raccolto, a prescindere dal modo in cui viene organizzato.
Note
cite-note-11. ↑ citereftreccani-base-di-dati-enciclopedia-della-matematicamwabymwabcBase di dati, in mwabgEnciclopedia della Matematica, Roma, Istituto dell'Enciclopedia Italiana, 2013. mwabkURL consultato il 19 luglio 2022.
cite-note-22. ↑ citereftreccani-banca-datimwab0mwab4Banca dati, in mwab8Treccani.it – Enciclopedie on line, Roma, Istituto dell'Enciclopedia Italiana.
cite-note-0-33. ↑ citereftreccani-data-basemwaccmwacgData base, in mwackTreccani.it – mwacoVocabolario Treccani on line, Roma, Istituto dell'Enciclopedia Italiana.
cite-note-44. ↑ mwac4mwac8Atzeni 2018,mwada pp. 197-202.
cite-note-66. ↑ mwadkmwadomwadsBreve storia dei database relazionali, su mwadwibm.com. mwad0URL consultato il 18 marzo 2024.
cite-note-77. ↑ mwaee(mwaeimwaemEN) mwaeqMichael Stonebraker e Lawrence A. Rowe, mwaeymwaecThe design of POSTGRES (mwaegmwaekPDF), in mwaeoSIGMOD '86: Proceedings of the 1986 ACM SIGMOD international conference on Management of data, Washington, DC, mwaesAssociation for Computing Machinery, maggio 1986, p.mwaew 4, mwae0DOI:mwae410.1145/16894, mwae8ISBNmwafa 0897911911.
cite-note-88. ↑ mwafumwafymwafcCarlo Strozzi, NoSQL, su mwafgstrozzi.it.
cite-note-99. ↑ mwafwmwaf0mwaf4A Brief History of NoSQL, su mwaf8blog.knuthaugen.no. mwagaURL consultato il 1º luglio 2024 mwage(archiviato dall'mwagiurl originale il 23 febbraio 2018).
cite-note-1010. ↑ mwagymwagcmwaggLegge sul diritto d'autore | Altalex, su mwagkAltalex. mwagoURL consultato il 18 gennaio 2017 mwags(archiviato dall'mwagwurl originale il 5 giugno 2019).
cite-note-1111. ↑ mwahamwahemwahiDirettiva 96/9/CE del Parlamento europeo e del Consiglio, su mwahmeur-lex.europa.eu.
Bibliografia
• citerefatzeni-2018Paolo Atzeni, Stefano Ceri, Piero Fraternali, Stefano Paraboschi e Riccardo Torlone, Basi di dati, 5ª ed., Milano, McGraw-Hill, 2018, ISBN 978-88-386-9445-5.
• mwahgRoberto Doretti, Data base – Concetti e disegno, Gruppo Editoriale Jackson, 1985, ISBN 88-7056-174-7.
• mwaho(EN) Ramez Elmasri e Shamkant B. Navathe, Fundamentals of Database Systems, 4ª ed., Addison Wesley, 2003, ISBN 978-0133970777.
• mwahw(EN) M. Tamer Özsu e Patrick Valduriez, Principles of Distributed Database Systems, Prentice Hall, 1999, ISBN 9780136079385.
• mwah4Giovanni Guglielmetti, La tutela delle banche dati con diritto sui generis nella direttiva 96/9/CE, in Contratto e impresa / Europa, 1997, pp. 177 e segg.
• mwaiaPaola Ada Emauela Frassi, Creazioni utili e diritto d'autore. Programmi per elaboratore e raccolte di dati, Giuffrè, 1997, ISBN 9788814064722.
• mwaiiLaura Chimienti, Banche dati e diritto d'autore, Giuffrè, 1999, ISBN 9788814075605.
• citerefcodd-1970(EN) Edgar F. Codd, A Relational Model of Data for Large Shared Data Banks, in Communications of ACM, vol. 13, n. 6, Association for Computing Machinery, 1º giugno 1970, DOI:10.1145/362384.362685.
Voci correlate
• mwaicAttacco ai database
• mwaikBase di conoscenza
• mwaisBig data
• mwai0Blockchain
• mwai8Data integration
• mwajeData warehouse
• mwajuLinguaggio di interrogazione
• mwajcOpen Database Connectivity
• mwajkQuery
• mwajsRecord (database)
• mwaj0Schema di database
• mwakeStructured Query Language
Altri progetti
Altri progetti
• Wikizionario
• Wikiversità
• Wikimedia Commons
• Wikizionario contiene il lemma di dizionario «database»
• Wikiversità contiene la materia Basi di dati
• Wikimedia Commons contiene immagini o altri file sul database
Collegamenti esterni
• citereftreccani-itBanca dati, su Treccani.it – Enciclopedie on line, Istituto dell'Enciclopedia Italiana.
• citerefenciclopedia-delle-scienze-socialiGuido M. Rey, Banche dati e basi di dati, in Enciclopedia delle scienze sociali, Istituto dell'Enciclopedia Italiana, 1991.
• citerefenciclopedia-del-novecentoPaolo Atzeni, Basi di dati, in Enciclopedia del Novecento, III Supplemento, Istituto dell'Enciclopedia Italiana, 2004.
• citerefvocabolario-treccaniData base, su Vocabolario Treccani, Istituto dell'Enciclopedia Italiana.
• citerefsapere-itdata base, su sapere.it, De Agostini.
• citerefenciclopedia-dei-ragazziNicola Nosengo, Banca dati, in Enciclopedia dei ragazzi, Istituto dell'Enciclopedia Italiana, 2005.
• citerefenciclopedia-della-matematica-2013base di dati, in Enciclopedia della Matematica, Istituto dell'Enciclopedia Italiana, 2013.
• citerefenciclopedia-della-matematica-2013Banca dati, in Enciclopedia della Matematica, Istituto dell'Enciclopedia Italiana, 2013.
• citerefbritannica-com(EN) database, su Enciclopedia Britannica, Encyclopædia Britannica, Inc.
• citerefopen-library(EN) Opere riguardanti Databases, su Open Library, Internet Archive.
• citerefmathworld(EN) Eric W. Weisstein, Database, su MathWorld, Wolfram Research.
• citereffoldoc(EN) Denis Howe, database, in Free On-line Dictionary of Computing. Disponibile con licenza mwakgGFDL